declare class Portal {
    private _enabledModules;
    private _modules;
    constructor();
    get apis(): Collection<string, HandlerRecord<Api>>;
    get commands(): Collection<string, HandlerRecord<Command>>;
    get context(): Collection<string, HandlerRecord<Context>>;
    get events(): Collection<string, HandlerRecord<globalThis.Event>[]>;
    get middleware(): HandlerRecord<Middleware>[];
    get moduleKeys(): Set<string>;
    module(moduleName: string): Module;
    /**
     * Populates the Portal instance from the manifest file.
     *
     * Warning: Do not call this method directly. Use the `portal` export instead.
     */
    static open(): Promise<void>;
}
declare class Module {
    private _moduleName;
    private _enabledModules;
    constructor(_moduleName: string, _enabledModules: Record<string, boolean>);
    get isEnabled(): boolean;
    setEnabled(value: boolean): void;
}
/**
 * Gets the config options for a specific plugin package.
 *
 * @param packageName The name of the package to get the options for.
 * @returns The options for the package, or null if the package is not installed nor configured.
 */
declare function getPluginOptions(packageName: string): unknown | null;

export { Portal as default, getPluginOptions };
